package com.meta.platform.login.plus.vcode.service;


import com.meta.platform.login.plus.common.vo.LoginSuccessVo;
import com.meta.platform.login.plus.vcode.domain.VCodeSendRecord;
import com.meta.platform.login.plus.vcode.rest.req.GetVCodeCmd;
import com.meta.platform.login.plus.vcode.rest.req.VCodeLoginCmd;

/**
 * 验证码业务处理
 *
 * @author pengjianfeng
 * @version 1.0
 * @date 2021/1/11 3:15 下午
 */
public interface VCodeService {
    
    /**
     * 获取验证码
     * 
     * @param getVCodeCmd 获取验证码参数
     * @return
     */
    VCodeSendRecord getVCode(GetVCodeCmd getVCodeCmd);
    
    /**
     * 验证验证码
     * 
     * @param receiver 手机号码 or 邮箱
     * @param vCode 验证码
     * @return
     */
    boolean verifyVCode(String receiver, String vCode);
    
    /**
     * 验证码登录
     * 
     * @param loginCmd 登录参数
     * @return
     */
    LoginSuccessVo login(VCodeLoginCmd loginCmd);
}
